package com.example.demo.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;

/**
 * 设备消息相关的数据传输对象类，包含坐标信息和压力数据信息。
 */
@NoArgsConstructor
@Getter
public class DeviceMessageDTO {

    /**
     * 表示设备坐标信息的数据类。
     */
    // 静态内部类方案
    @NoArgsConstructor
    @Getter
    public static class Coordinates {
        private String tab;
        private double x;
        private double y;
        private double z;
    }

    /**
     * 表示设备压力数据信息的数据类。
     */
    // 静态内部类方案
    @NoArgsConstructor
    @Getter
    public static class PressureData {
        @JsonProperty("F0")
        private double F0;
        @JsonProperty("F1")
        private double F1;
        @JsonProperty("F2")
        private double F2;
        @JsonProperty("F3")
        private double F3;
        @JsonProperty("F4")
        private double F4;
        @JsonProperty("F5")
        private double F5;
        @JsonProperty("F6")
        private double F6;
        @JsonProperty("F7")
        private double F7;
        @JsonProperty("F8")
        private double F8;
        @JsonProperty("W0")
        private double W0;
        @JsonProperty("W1")
        private double W1;
        @JsonProperty("W2")
        private double W2;
        @JsonProperty("W3")
        private double W3;
        @JsonProperty("W4")
        private double W4;
    }
}